<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>lesson 4</title>
</head>
<body>
    <div id="root"></div>
</body>
</html>
<script src="https://unpkg.com/vue@next"></script>
<script>
    // 创建一个vue实例   实例的名字叫app
    const app = Vue.createApp({
        data(){
            return{
                list:[],
                inputValue:'',
            }
        },
        methods:{
            handleAddItem(){
                this.list.push(this.inputValue);
                this.inputValue="";
            }
        },
        // 使用v-bind给button按钮绑定title属性
        // 使用v-bind向组件传递属性content  将item赋值给content
        template:`
        <div>
            <input v-model="inputValue" />
            <button v-on:click="handleAddItem" v-bind:title="inputValue">增加</button>
            <ul>
                <todo-item v-for="(item,index) in list" v-bind:content="item"></todo-item>    
            </ul>
        </div>
        `
    });
    // 在app实例中使用组件
    // 把每一个li封装成一个组件
    // 创建组件使用component方法
    // 组件的名字叫 todo-item
    app.component('todo-item',{
        props:['content'],  // 通过props来接收传递过来的content
        template:'<li>{{content}}</li>'
    });
    app.mount('#root')
</script>